using Aurora.AI.SqlSugar.Framework.Repositories;

namespace Aurora.AI.Domain.Domain.ChatChannel.Repositories;

public interface IChatChannelRepository:IRepository<Aggregates.ChatChannel>
{

    Task<List<ChatChannel.Aggregates.ChatChannel>> GetListAsync(int page, int pageSize);
    Task<(int total, List<ChatChannel.Aggregates.ChatChannel>list)> GetPageListAsync(int page, int pageSize);
    Task<int> GetCountAsync();

    /// <summary>
    /// 创建应用
    /// </summary>
    /// <param name="application"></param>
    /// <returns></returns>
    Task Create(ChatChannel.Aggregates.ChatChannel application);

    /// <summary>
    /// 更新应用
    /// </summary>
    /// <param name="application"></param>
    /// <returns></returns>
    Task UpdateChannel(ChatChannel.Aggregates.ChatChannel application);


    /// <summary>
    /// 获取应用详情
    /// </summary>
    /// <param name="id"></param>
    /// <returns></returns>
    Task<ChatChannel.Aggregates.ChatChannel> GetByIdAsync(string id);


    /// <summary>
    /// 获取应用详情
    /// </summary>
    /// <param name="id"></param>
    /// <returns></returns>
    Task<IEnumerable<Aggregates.ChatChannel>> GetByModelAsync(string model);
}